import {
	toast
} from "@/utils/global.js"
// #ifdef APP-PLUS
const CalendarManager = uni.requireNativePlugin('SaiShao-CalendarManager')
// #endif
// #ifdef H5 
const CalendarManager = {}
// #endif
// console.log(CalendarManager.addCalendarEvent, 'CalendarManager', JSON.stringify(CalendarManager))
// 日程JSON对象
// {
// 	title: "", //日程title
// 	desc: "", //日程内容
// 	location: "", //位置	
// 	start: "", //开始时间 毫秒
// 	end: "", //结束时间 毫秒
// 	advanceTime: 0, // 提前提醒时间
// 	rule: null, //重复规则
// 	eventId: "" //日程ID
// }


// API返回状态
//  * 0 成功
//  * -1 失败
//  * -2 无权限
function checkCalendar() {
	return new Promise((resolve) => {
		CalendarManager.checkCalendarPermission((e) => {
			console.log('查询日历权限结果', e)
			if (!e) {
				toast("请开启日历权限")
			}
			resolve(e)
		})
	})

}
// 添加日程
async function addCalendar(schedule_json) {
	let calendarAuth = await checkCalendar();
	if (!calendarAuth) return
	CalendarManager.addCalendarEvent(JSON.stringify(schedule_json), (e) => {
		console.log("新增日程：", e)
	})
}
// 修改日程  传入日程JSON对象
async function updateCalendar(schedule_json) {
	let calendarAuth = await checkCalendar();
	if (!calendarAuth) return
	CalendarManager.updateCalendarEvent(JSON.stringify(schedule_json), (e) => {
		console.log("修改日程：", e)
	})
}
// 删除日程  传入eventId
async function deleteCalendar(eventId) {
	let calendarAuth = await checkCalendar();
	if (!calendarAuth) return
	CalendarManager.deleteCalendarEvent(eventId, (e) => {
		console.log("删除的日程：", e)
	})
}
// 查询日程  传入eventId
async function queryCalendar(eventId, cb) {
	let calendarAuth = await checkCalendar();
	if (!calendarAuth) return
	// console.log(eventId)
	CalendarManager.queryCalendarEvent(eventId, (e) => {
		console.log("查询的日程1：", e)
	})
	// CalendarManager.queryCalendarEvent2(s, e, (e) => {
	// 	console.log("查询的日程2：", e)
	// })
}
export {
	checkCalendar,
	addCalendar,
	updateCalendar,
	deleteCalendar,
	queryCalendar
}